package controlador;

import modelo.Gerenciador;
import modelo.Processo;

public class Controlador {
	
	private static final Integer NTHREADS = 20;
	private static Controlador controlador = null;
	
	private Gerenciador gerenciador;
	
	public Controlador() {
		gerenciador = new Gerenciador();
		criaProcessos();
	}
	
	public void criaProcessos(){
		for(int i = 0; i < NTHREADS; i++){
			Processo p = new Processo(i);
			Thread t = new Thread(p);
			t.start();
		}
	}
	
	public void requisitaPagina(Processo processo, int pagina){
		gerenciador.acessaPagina(processo, pagina);
	}
	
	public static Controlador getControlador(){
		if( controlador == null ) controlador = new Controlador();
		return controlador;
	}
}
